In the data transmission method where information of voice signals and the like is converted into digital data and transmitted, an amount of information to be transmitted is not always constant in terms of time, but generally may change from time to time.
Accordingly, if the transmission data is divided into frame units each having a fixed time length and each frame consisting of variable number of bits is transmitted frame by frame to achieve the data transmission, a transmission rate can be varied temporally and necessary information can be transmitted efficiently in each frame period. At this time, a transmitter need not conduct useless transmission and hence the power consumption of the apparatus can be suppressed to low.
To conduct data transmission with varying transmission rate, normally it is necessary for the receiving side to get information indicating how fast the transmission rate of each frame is by means of some kind or another. For this purpose, conventionally there have been two methods: one is a method whereby the rate information is transmitted directly as part of frame data and the receiving side determines the rate on the basis of this information; and the other is a method where no rate information is sent, but the receiving side judges the rate with an error-detecting code that is added to the transmitted data to indicate transmission quality (for example, CRC: Cyclic Redundancy Check code), called a blind rate detection method (for example, refer to International Publication No. WO96/26582 applied by the present applicant).
On the other hand, in communication environments where transmission errors occur frequently such as data transmission via a radio transmission path, it is commonly in practice to improve transmission quality by conducting error correction of the transmitted data (FEC: Forward Error Correction). For error-correcting codes and error-correcting decoding, for example, a convolutional code and maximum likelihood decoding methods such as Viterbi decoding are used.
In addition, in the method where the receiving side determines the rate by using the error-detecting code that is added to the transmitted data to indicate the transmission quality without sending any rate information, a decision error rate in determining the rate depends on a word length of the error-detecting code and doesn't decrease below a certain rate-decision error rate (namely, a probability of determining that no transmission error exists for an erroneous rate) even if the transmission error goes down.
On the other hand, in the case where the rate information is sent from the transmitting side to the receiving side, if an error occurs during transmission, an effective data length in the received frame cannot be judged and it becomes difficult for the receiving side to reproduce the transmitted data correctly even if no error occurs in the data part.
Therefore, conventionally there has been devised a method whereby the rate-decision error rate was improved through the use of the likelihood information at the time of the maximum likelihood decoding and the transmission rate is allowed to vary, frame by frame, more securely during the transmission (for example, refer to International Publication No. WO97/50219 applied by the present applicant).
In the above-mentioned WO96/26582 and WO97/50219, described is a method where, in order to improve the rate detection performance at the receiving side (that is, to reduce the probability of detecting the rate mistakenly), CRC bits that have been conventionally added to the end of the transmitted data (in this case the position of the CRC bits in the frame depends on the bit length of the transmitted data) are arranged at a fixed position in the frame (for example, at the first position of the frame) and transmitted.
FIGS. 1A and 1B are diagrams showing an example of transmission bit arrangement of the conventional scheme.
In the conventional method where the CRC bits are arranged after transmitted data bits (“conventional postposition”), for example, when a position one bit ahead from the correct rate position is detected, since the codewords at the receiving side goes successively as D1 to D0 and C4 to C1, even if no transmission bit error occurs, the decision result by CRC shows OK (namely, erroneous detection) with a probability of 50 percent. Similarly to this, when a position two bits and three bits ahead from the correct rate position is detected, the decision result by CRC indicates OK erroneously with a probability of 25 percent and 12.5 percent, respectively.
To solve such a problem that the probability of detecting the rate mistakenly becomes larger as the assumed position approaches the correct rate position, there was devised a method where the CRC bits are arranged at the first position of the frame in the above-mentioned WO96/26582 and WO97/50219. In this method, as shown in FIG. 1B (“preposition” case), since a codeword arrangement at the receiving side is discontinuous as D1, C4 to C1, the above-mentioned problem does not occur and a low probability of detecting the rate mistakenly that is determined by the word length of the CRC code can be obtained constantly, from a detection position adjacent to the correct position to a detection position remote therefrom.
However, in order that the transmitting side arranges the CRC bits always at the first position of the frame, that is, ahead of the transmitted data and transmits, it is essential to store temporarily the whole bits of the transmitted data in memory until calculation of the error-detecting code for the transmitted data is completed. Such buffer memory becomes large in size in proportion to the number of the transmitted data bits of one frame, and when a huge amount of the transmitted data is sent, hardware scale of the memory presents a problem.
On the other hand, in the variable rate data transmission that is assumed in WO96/26582 and WO97/50219, the number of the transmitted data bits in the frame is always a finite value and the case where the number of bits is zero was not described. In actual data transmission, there are cases where the number of the transmitted data bits to be sent becomes zero, for example, as a silent interval in the case of transmission of voice information (namely, an interval when a sender does not talk). It is necessary for the receiving side to perform the rate detection properly including such cases (namely, cases where apparent transmission rate=0) (this is because there may be a case where, at the receiving side, a decoder of voice codec (CODEC) recognizes that an interval is a silent interval and conducts processing different from that of a non-silent interval, such as generating background noise). A parity bit or parity bits of the conventional error-detecting code (or CRC) is the one that is calculated for a transmitted data sequence of a finite size and transmitted together with the data, and in such cases as mentioned above where the number of the transmitted data bits becomes zero, commonly the error-detecting code is not added. This means that the rate detection method on the basis of the error-detecting code as described in WO96/26582 and WO97/50219 cannot be applied as it is.
Further, in the WO97/50219 described is that by using the likelihood obtained at the time of conducting the error-correcting decoding (or Viterbi decoding) as rate detection information, a lower probability of detecting the rate mistakenly can be achieved and the rate detection performance can be improved. In the rate detection according to the above-mentioned method, WO97/50219 specifies that the likelihood obtained at each of the assumed final bit positions is compared with a previously-specified value Δ (decision of a threshold) (refer to FIG. 6 in WO97/50219), and in this occasion it is assumed that one kind of Δ value is used in common regardless of the assumed final bit position. However, when this technology is applied in actual radio communication environments, a proper value of Δ for obtaining desired detection performance may differ for each final bit position (i.e. different number of the transmitted data bits in the frame) depending on a distribution tendency of bit transmission errors in the transmission path. For this case, if a single value of Δ is used in common, the rate detection performance varies according to the final bit position; therefore there arises a problem in that average quality of the variable rate data transmission including the rate detection performance changes when a distribution of occurrence probability for transmission rates (final bit positions) varies.